package com.delio.client.pagos.contratos;

import java.util.Date;
import java.util.List;

import com.delio.client.pagos.aportes.DescuentoAporte;
import com.delio.client.util.MensajeData;
import com.extjs.gxt.ui.client.data.FilterPagingLoadConfig;
import com.extjs.gxt.ui.client.data.PagingLoadResult;
import com.google.gwt.user.client.rpc.AsyncCallback;

public interface ContratoServiceAsync {

	void paginateContrato(FilterPagingLoadConfig config, Integer empleado_id,
			AsyncCallback<PagingLoadResult<Contrato>> callback);

	void delete(Integer id, AsyncCallback<MensajeData> callback);

	void deleteAll(String ids, AsyncCallback<MensajeData> callback);

	void count(AsyncCallback<Integer> callback);

	void save(Contrato co, List<DescuentoAporte> ids,
			AsyncCallback<MensajeData> callback);

	void save(Contrato co, AsyncCallback<MensajeData> callback);

	void terminarcontrato(Integer contrato_id, Date fecha,
			AsyncCallback<MensajeData> callback);

}
